<?php
namespace Admin\Controller;
use Think\Controller;
class IndexController extends Controller {
    public function index(){
        echo "string";
    }
    public function _initialize(){
      if(!session('?admin')){
        $this->error('当前用户没有权限','Login/login');
        exit;
      }
    }
        
        function userList(){
        	$userModel=M('Users');//Users是模型名
        	$local_users=$userModel->order('id desc')->select();//sleect * from think_users order by id desc
        	//$local_users 是函数中的局部变量，在外面是不可见的
        	$this->users=$local_users;//users是全局变量
        	//$this->assign();
        	$this->display();//把当前对象的所有全局变量传递到对应视图中，可以使用assign方法限制传递的全局变量
        	
        }
        function bsUserList(){
            //$userModel=M('Users');//Users是模型名
            //$local_users=$userModel->order('id desc')->select();//sleect * from think_users order by id desc
            //$local_users 是函数中的局部变量，在外面是不可见的
            //$this->users=$local_users;//users是全局变量
            //$this->assign();
            //$this->display();//把当前对象的所有全局变量传递到对应视图中，可以使用assign方法限制传递的全局变量


            $User = M('Users'); // 实例化User对象
            $count = $User->count();// 查询满足要求的总记录数
            $Page = new \Think\Page($count,5);// 实例化分页类 传入总记录数和每页显示的记录数(5)
            $show = $Page->show();// 分页显示输出
            // 进行分页数据查询 注意limit方法的参数要使用Page类的属性
            $list = $User->limit($Page->firstRow.','.$Page->listRows)->select();
            $this->assign('users',$list);// 赋值数据集
            $this->assign('page',$show);// 赋值分页输出
            $this->display(); // 输出模板
            
        }
        function users(){
            $userModel=M('Users');//Users是模型名
            $local_users=$userModel->order('id desc')->select();//sleect * from think_users order by id desc
            //$local_users 是函数中的局部变量，在外面是不可见的
            $this->users=$local_users;//users是全局变量
            //$this->assign();
            $this->display();//把当前对象的所有全局变量传递到对应视图中，可以使用assign方法限制传递的全局变量
            
        }
        function del($id){
            //生产一个users模型
            $usersModel=M('Users');//Users跟表对应的模型
            //调用模型的方法删除数据
            if($usersModel->delete($id)){
                //delete from think_users where id=$id
                //删除成功
                $this->success('删除成功');

            }else{
                //删除失败
                $this->error('删除失败');
            }
            

        }
        function setstar($id){
            //生成一个Users表对应的模型实例users
            $usersModel=M('Users');
            $date['isstar']=1;
            if($usersModel->where("id=$id")->save($date)){
                $this->success('修改成功');
            }else{
                //删除失败
                $this->error('修改失败');
            }

        }
        function unstar($id){
            $usersModel=M('Users');
            $usersModel->isstar=0;
            $usersModel->isfirst=0;
            $usersModel->id=$id;
            if ($usersModel->save()){
                $this->success('取消明星作者成功');
            }else{
                //删除失败
                $this->error('取消明星作者失败');
            }

        }
        function unfirst($id){
            //生成一个Users表对应的模型实例users
            $usersModel=M('Users');
            $date['isstar']=0;
            if($usersModel->where("id=$id")->save($date)){
                $this->success('取消首页推荐');
            }else{
                //删除失败
                $this->error('取消首页推荐');
            }

        }
        function setfirst($id){
            $usersModel=M('Users');
            $usersModel->isstar=1;
            $usersModel->isfirst=1;
            $usersModel->id=$id;
            if ($usersModel->save()){
                $this->success('设置首页推荐');
            }else{
                //删除失败
                $this->error('设置首页推荐');
            }

        }
        function updateUserInfo($id){
            $usersModel=M('Users');
            $this->user=$usersModel->find($id);
            $this->display();
            //将查询到的信息user传递给模板updateUserInfo.html
        }
        function update(){
      //获取updateUserInfo界面提交的数据，修改数据
      // $data$_POST
      // $data=I(post.)
      // create()   利用$_POST数据创建一个对象

      $userModel=D('Users');
      $userModel->create();
      /*if ($_FILES['photo']['error']==0) {*/
       /* $photoinfo=$this->upload();
        
        $userModel->photo=$photoinfo['photo']['savename'];*/
      //}

      if ($userModel->save()) {
        $this->success('修改用户成功！','users');
      }else{
        $this->error('修改用户失败！');
      }
    }

    //文件上传
    public function upload(){
      $upload = new \Think\Upload();// 实例化上传类
      $upload->maxSize = 3145728 ;// 设置附件上传大小
      $upload->exts = array('jpg', 'gif', 'png', 'jpeg');// 设置附件上传类型
      $upload->rootPath = './Public/Uploads/photo/'; // 设置附件上传根目录
      //$upload->savePath = ''; // 设置附件上传（子）目录
      $upload->autoSub=false;
      // 上传文件
      $info = $upload->upload();
      if(!$info) {// 上传错误提示错误信息
      $this->error($upload->getError());
      }else{// 上传成功
      //$this->success('上传成功！');
        return $info;
      }
    }



    function img(){
        
       $photoinfo=$this->upload();

       $filePath='./Public/Uploads/photo/';
       $oldFileName=$photoinfo['photo']['savename'];
       $oldFilFulleName=$filePath."\\".$oldFileName;
       $newFileName='thumb_'.$oldFileName;
       $newFilFulleName=$filePath."\\".$newFileName;

       $imgFile=$photoinfo['photo']['rootPath'].'\\'.$photoinfo['photo']['savename'];
       $image=new \Think\Image();
       $image->open($oldFilFulleName);
       $image->thumb(100,100)->save($newFilFulleName);
       return $newFileName;


    }

    public function addUser(){
        //接收从add.html界面提交过来的信息
        //创建对象，保存到数据库中
        //注意：单独处理图像上传以及Photo字段的赋值
        //保存到数据库 add（）
        $userModel=D('Users');
        if($userModel->create())
        {
            if ($_FILES['photo']['error']==0) {//判断文件是否成功
                $fileName=$this->img();
                //$photoinfo=$this->upload();//将临时文件保存到指定位置
                $userModel->photo=$fileName;//获取并设置文件名称     
         }

                  if ($userModel->add()) {
                    $this->success('添加用户成功！','users');/*添加成功后返回users页面*/
                  }else{
                    $this->error('添加用户失败！');
                  }
           


                }else{
                    $this->error($userModel->getError());
                }
            }







            //视频列表
            function videos(){
            $videoModel=M('Videos');//Users是模型名
            $local_videos=$videoModel->order('id desc')->select();//sleect * from think_users order by id desc
            //$local_users 是函数中的局部变量，在外面是不可见的
            $this->videos=$local_videos;//users是全局变量
            //$this->assign();
            $this->display();//把当前对象的所有全局变量传递到对应视图中，可以使用assign方法限制传递的全局变量
            
        }
        function dele($id){
            //生产一个users模型
            $videosModel=M('Videos');//Users跟表对应的模型
            //调用模型的方法删除数据
            if($videosModel->delete($id)){
                //delete from think_users where id=$id
                //删除成功
                $this->success('删除成功');

            }else{
                //删除失败
                $this->error('删除失败');
            }
            

        }
        function updateVideoInfo($id){
            $videosModel=M('Videos');
            $this->video=$videosModel->find($id);
            $this->display();
            //将查询到的信息user传递给模板updateUserInfo.html
        }
        function updateVideo(){
      //获取updateUserInfo界面提交的数据，修改数据
      // $data$_POST
      // $data=I(post.)
      // create()   利用$_POST数据创建一个对象

      $videoModel=D('Videos');
      $videoModel->create();
      /*if ($_FILES['photo']['error']==0) {*/
       /* $photoinfo=$this->upload();
        
        $userModel->photo=$photoinfo['photo']['savename'];*/
      //}

      if ($videoModel->save()) {
        $this->success('修改视频成功！','videos');
      }else{
        $this->error('修改视频失败！');
      }
    }

    //文件上传

    


    
    public function addVideo(){
        //接收从add.html界面提交过来的信息
        //创建对象，保存到数据库中
        //注意：单独处理图像上传以及Photo字段的赋值
        //保存到数据库 add（）
        $videoModel=D('Videos');
        if($videoModel->create())
        {
            if ($_FILES['photo']['error']==0) {//判断文件是否成功
                $fileName=$this->img();
                //$photoinfo=$this->upload();//将临时文件保存到指定位置
                $videoModel->photo=$fileName;//获取并设置文件名称     
         }

                  if ($videoModel->add()) {
                    $this->success('添加视频成功！','videos');/*添加成功后返回users页面*/
                  }else{
                    $this->error('添加视频失败！');
                  }
           


                }else{
                    $this->error($videoModel->getError());
                }
            }



    
}